Testing distributed real-time systems
نویسندگان
چکیده
For testing of sequential software it is usually sufficient to provide the same input (and program state) in order to reproduce the output. For real-time systems, on the other hand, we need also to control, or observe, the timing and order of the inputs. If the system additionally is multitasking, we also need to take timing and the concurrency of the executing tasks into account. In this paper we present a method for deterministic testing of multitasking real-time systems, which allows explorative investigations of real-time system behavior. The method includes an analysis technique that given a set of tasks and a schedule derives all execution orderings that can occur during run-time. These orderings correspond to the possible interleavings of the executing tasks. The method also includes a testing strategy that using the derived execution orderings can achieve deterministic, and even reproducible, testing of real-time systems. Since, each execution ordering can be regarded as a sequential program, it becomes possible to use techniques for testing of sequential software in testing multi-tasking real-time system software. We also show how this analysis and testing strategy can be extended to encompass distributed computations, communication latencies and the effects of global clock synchronization. The number of execution orderings is an objective measure of the testability of a system since it indicates how many behaviors the system can exhibit during runtime. In the pursuit of finding errors we must thus cover all these execution orderings. The fewer the orderings the better the testability. Keyword: Determinism, Testing, Distributed real-time systems, reproducibility.
منابع مشابه
Proposal to ARTES TATOO Test And Testability Of Distributed Real-time Systems
The goal of the proposed research is to develop metrics for testability, test methods, tools and design rules for high testability in distributed real-time systems (DRTS). Theoretical and practical results with regard to testing and testability of distributed real-time systems are next to nonexistent. Research is therefore of significance to both academia and Industry. We propose here a project...
متن کاملReproducible and Deterministic Testing of Distributed Real-Time Systems
Reproducible and deterministic testing of sequential programs can in most cases be achieved by controlling the sequence of inputs to the program. The behavior of a distributed real-time system, on the other hand, is not only dependent on the inputs but also on the order, and timing of the tasks (concurrent processes) that execute and communicate with each other and the environment. Trying to ap...
متن کاملLanguages, tools and patterns for the specification of distributed real-time tests
For modern distributed systems, it is important that they adhere to realtime requirements, e.g., to deliver a response to a request within a given deadline. For assuring the quality of software systems, testing is the most important means. However, a mature support for real-time testing of distributed systems is missing. This thesis treats languages, tools, and patterns for the specification of...
متن کاملDistance protection closed-loop testing using RTDS
This paper presents a distance protection test procedure by applying the Real-Time Digital Simulator (RTDS) of a power system. RTDS is a tool to design, develop, and test power-system protection. The RTDS enables real-time computation of electromagnetic phenomena with a calculation time step of even 50μs. The hardware allows the import and export of many signals from the simulator to an ext...
متن کاملAutomatic Generation of Run-Time Test Oracles for Distributed Real-Time Systems
Distributed real-time systems are of one important type of real-time systems. They are usually characterized by both reactive and real-time factors and it has long been recognized that how to automatically check such systems’ correctness at run time is still an unaddressed problem. As one of the main solutions, test oracle is a method usually used to check whether the system under test has beha...
متن کاملMonitoring, Testing and Debugging of Distributed Real-Time Systems
Testing is an important part of any software development project, and can typically surpass more than half of the development cost. For safety-critical computer based systems, testing is even more important due to stringent reliability and safety requirements. However, most safety-critical computer based systems are real-time systems, and the majority of current testing and debugging techniques...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
- Microprocessors and Microsystems - Embedded Hardware Design
دوره 24 شماره
صفحات -
تاریخ انتشار 2001